package com.ai.entity.alarm;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;


/**
 * 算法入参
 */
@Data
@Accessors(chain = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class AlgorithmAlarmBO {
    /**
     * 摄像头表主键
     */
    @ApiModelProperty("摄像头表主键")
    private Integer cameraId;

    @ApiModelProperty("图片抓拍状态")
    private Integer snapPhotoStatus;

    /**
     * 抓拍照片路径
     */
    @ApiModelProperty("抓拍照片路径--渲染图")
    @JSONField(serialize = false)
    private String snapPhoto;

    /**
     * 1  路径
     * 2  base64原图
     */
    @ApiModelProperty("原图图片状态")
    private Integer originalStatus;

    /**
     * base64  或 原图
     */
    @ApiModelProperty("抓拍图片路径--原图")
    @JSONField(serialize=false)
    private String originalPhoto;

    /**
     * 视频格式，1 路径 2 base64
     */
    private Integer snapVideoStatus;

    /**
     * 视频回放路径
     */
    @ApiModelProperty("视频回放路径")
    private String snapVideo;


    /**
     * 识别时间
     */
    @ApiModelProperty("识别时间")
    private String createTime;

    /**
     * 是否异常 1正常2异常
     */

    @ApiModelProperty("是否异常 1正常2异常")
    private Integer state;

    /**
     * 摄像头代号
     */
    @ApiModelProperty("摄像头代号")
    private String cameraCode;

    /**
     * 带钢号
     */
    @ApiModelProperty("带钢号")
    private String stripNo;

    /**
     * 来料钢卷号
     */
    @ApiModelProperty("来料钢卷号")
    private String originalSprayNo;
    /**
     * 功能types
     */
    @ApiModelProperty("功能types")
    private Integer type;

    @ApiModelProperty("功能代号")
    private String functionType;

    @ApiModelProperty("结果")
    private Integer result;

    @ApiModelProperty("信号记录主键")
    private Integer taskId;

    @ApiModelProperty("服务器code")
    private String serverCode;


    /**
     * 识别钢卷号
     */
    @ApiModelProperty("识别钢卷号")
    private String detectionSprayNo;

    /**
     * 带钢宽度
     */
    @ApiModelProperty("带钢宽度")
    private Double stripWidth;

    /**
     * 偏移量
     */
    @ApiModelProperty("偏移量")
    private Double offset;

    /**
     * 检测次数
     */
    @ApiModelProperty("检测次数")
    private Integer detectionTimes;

    /**
     * 信号表主键
     */
    @ApiModelProperty("信号表主键")
    private Integer logId;


    @ApiModelProperty("0.正常 1.遮挡 2.丢帧")
    private Integer isValid = 0;


    @ApiModelProperty("持续时间")
    private Integer duration;

    @ApiModelProperty("炉门编号")
    private String doorNum;
}
